package com.comac.ins.isfd.domain.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.comac.ins.common.tenant.core.TenantEntity;
import com.comac.ins.common.translation.annotation.Translation;
import com.comac.ins.common.translation.constant.TransConstant;
import com.comac.ins.isfd.domain.IsfdAcousticsModel;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;


/**
 * 声学模型视图对象 isfd_acoustics_model
 *
 * @author Lion Li
 * @date 2025-10-13
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = IsfdAcousticsModel.class)
public class IsfdAcousticsModelVo extends TenantEntity implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @ExcelProperty(value = "主键id")
    private Long id;

    /**
     * 文件名
     */
    @ExcelProperty(value = "文件名")
    private String fileName;

    /**
     * 原名
     */
    @ExcelProperty(value = "原名")
    private String originalName;

    /**
     * 网格格式
     */
    @ExcelProperty(value = "网格格式")
    private String meshFormat;

    /**
     * OSS文件地址
     */
    @ExcelProperty(value = "OSS文件地址")
    private String url;

    /**
     * 文件路径
     */
    @ExcelProperty(value = "文件路径")
    private String filePath;

    /**
     * 文件大小
     */
    @ExcelProperty(value = "文件大小")
    private Long fileSize;

    /**
     * 支持的求解器
     */
    @ExcelProperty(value = "支持的求解器")
    private String solver;

    /**
     * 业务场景
     */
    @ExcelProperty(value = "业务场景")
    private String businessName;

    /**
     * 来源方式
     */
    @ExcelProperty(value = "来源方式")
    private String importMethod;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remarks;


    /**
     * 上传人
     */
    @ExcelProperty(value = "上传人")
    @Translation(type = TransConstant.USER_ID_TO_NAME, mapper = "createBy")
    private String createByName;
}
